package 抽象类和接口;

/**
 * 项目名称：Demo01
 * 类 名 称：AbstractClass
 * 类 描 述：
 *          不同点
 *
 * 创建时间：2021/03/15 10:27
 * 创 建 人：XiaoCoder
 */
abstract class AbstractClass {
    // 接口中的成员全都是 public 的,抽象类中的成员可以使用private、public、protected、默认等修饰；
    private int i;
    public int b;
    protected int c;
    int d;

    //  抽象类中可以定义构造器，接口不能；
    public AbstractClass() {
    }

    // 抽象类可以有抽象方法和具体方法，接口不能有具体方法；
    void fun() {
        System.out.println("抽象方法中的具体方法体");
    }

    // 抽象方法
    abstract void function();

    // 有抽象方法的类必须被声明为抽象类，而抽象类未必要有抽象方法；

    // 抽象类中可以包含静态方法，接口中不能有静态方法；
    static void eat(){

    }

    // 一个类只能继承一个抽象类，一个类可以实现多个接口；
}
